package com.giscloud.amp.service.auth;

import com.giscloud.amp.entity.AmpStaffExample;
import com.giscloud.amp.entity.dto.AmpStaffDTO;
import com.giscloud.amp.entity.dto.PasswordDTO;
import com.giscloud.amp.entity.vo.AmpStaffVO;
import com.giscloud.commons.model.Result;
import com.giscloud.datasource.page.PageInfo;

import java.util.List;

/**
 * @Author:gxd
 * @Description:
 * @Date: 11:03 2018/2/24
 * @Modified By:
 */
public interface AmpStaffService {
     PageInfo getAmpStaffList(AmpStaffDTO ampStaffDTO);

     AmpStaffVO getAmpStaffByCondition(AmpStaffDTO ampStaffDTO);

     AmpStaffVO getAmpStaffForValidate(AmpStaffDTO ampStaffDTO);

     int insert(AmpStaffDTO ampStaffDTO);

     int update(AmpStaffDTO ampStaffDTO);

     int resetPassword(AmpStaffDTO ampStaffDTO);

     int delete(Long staffId);

     long countAmpStaff(AmpStaffDTO ampStaffDTO);
     
     List<AmpStaffVO> getAmpStaffByStaffName(String staffName);


     long countByPhone(AmpStaffExample ampStaffExample);

     Result changePassword(PasswordDTO passwordDTO);
}
